/* =====================================================
   Product Map — Pitch Deck Theme
   Companion CSS for Advanced Slides (reveal.js)
   ===================================================== */

@import url('https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;900&display=swap');

/* ─── Base ──────────────────────────────────────────── */

.reveal,
.reveal h1,
.reveal h2,
.reveal h3,
.reveal h4,
.reveal p,
.reveal li {
  font-family: 'Inter', -apple-system, BlinkMacSystemFont, sans-serif;
}

.reveal h1 {
  font-size: 2.4em;
  font-weight: 900;
  letter-spacing: -0.03em;
  line-height: 1.1;
}

.reveal h2 {
  font-size: 1.25em;
  font-weight: 500;
  opacity: 0.75;
  letter-spacing: -0.01em;
  margin-top: 0.3em;
}

.reveal h3 {
  font-size: 0.85em;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.08em;
  color: #4f8ef7;
  margin-bottom: 0.5em;
}

.reveal p,
.reveal li {
  font-size: 0.82em;
  line-height: 1.65;
}

.reveal ul {
  margin-left: 1em;
}

/* ─── Light slides ──────────────────────────────────── */
/* Only darken slide-level headings — not text inside dark-bg grid cards */

.reveal section.light h1,
.reveal section.light h2 {
  color: #0f1629;
}

/* ─── Blockquote ────────────────────────────────────── */

.reveal blockquote {
  display: block;
  width: 100%;
  background: transparent;
  box-shadow: none;
  border: none;
  border-left: 3px solid #f0c040;
  color: #f0c040;
  font-size: 0.78em;
  font-style: italic;
  padding: 6px 18px;
  text-align: left;
  margin: 12px 0 0;
}

.reveal blockquote p {
  color: #f0c040;
  font-size: 1em;
}

/* ─── Tables ────────────────────────────────────────── */

.reveal table {
  border-collapse: collapse;
  font-size: 0.8em;
  width: 92%;
  margin: 24px auto 0;
}

.reveal table th {
  background-color: #4f8ef7;
  color: #ffffff;
  font-weight: 700;
  padding: 10px 20px;
  text-align: left;
  text-transform: uppercase;
  font-size: 0.75em;
  letter-spacing: 0.06em;
}

.reveal table td {
  padding: 9px 20px;
  border-bottom: 1px solid #1e2a3a;
  text-align: left;
}

.reveal table tbody tr:nth-child(odd) > td {
  background-color: #1a2744;
}

.reveal table tbody tr:nth-child(even) > td {
  background-color: #162d50;
}

.reveal table td:last-child,
.reveal table td strong {
  color: #f0c040;
}

/* ─── Horizontal rule ───────────────────────────────── */

.reveal hr {
  border: none;
  border-top: 1px solid #2d3f5a;
  margin: 10px 0;
}

/* ─── Step cards (How It Works) ─────────────────────── */

.reveal .step h2 {
  font-size: 2.5em;
  font-weight: 900;
  color: #4f8ef7;
  margin: 0 0 8px;
  line-height: 1;
  opacity: 1;
}

.reveal .step h3 {
  color: #f0c040;
  font-size: 0.85em;
  margin-bottom: 10px;
}

.reveal .step p,
.reveal .step li {
  color: #94a3b8;
}

/* ─── Market cards (TAM / SAM / SOM) ────────────────── */

.reveal .market {
  text-align: center;
}

.reveal .market h3 {
  font-size: 0.75em;
  color: #94a3b8;
  margin-bottom: 2px;
}

.reveal .market h1 {
  font-size: 2.3em;
  color: #f0c040;
  margin: 0 0 4px;
  line-height: 1;
  opacity: 1;
}

.reveal .market p {
  font-size: 0.72em;
  color: #94a3b8;
}

/* ─── Architecture diagram ──────────────────────────── */

.reveal .arch-source {
  text-align: center;
  color: #94a3b8;
  font-size: 0.78em;
}

.reveal .arch-center h3 {
  color: #ffffff;
  font-size: 1em;
}

.reveal .arch-center p,
.reveal .arch-center em {
  color: #94a3b8;
  font-size: 0.78em;
}

.reveal .arch-label {
  text-align: center;
  color: #64748b;
  font-size: 0.7em;
  font-style: italic;
}

/* ─── CTA slide ─────────────────────────────────────── */

.reveal section.cta h1 {
  font-size: 2.8em;
  line-height: 1.05;
}

.reveal section.cta h2 {
  color: #f0c040;
  opacity: 1;
  font-size: 1.8em;
  font-weight: 700;
}

.reveal section.cta a {
  color: #475569;
  font-size: 0.78em;
}

/* ─── Metric highlight ──────────────────────────────── */

.reveal strong.metric,
.reveal .metric-banner strong {
  color: #f0c040;
}

/* ─── Advisor bar ───────────────────────────────────── */

.reveal .advisors p,
.reveal .advisors strong {
  color: #94a3b8;
  font-size: 0.78em;
  text-align: center;
}

/* ─── Footer logo watermark (all content slides) ────── */

.reveal .slides section::after {
  content: '';
  position: absolute;
  bottom: 14px;
  right: 18px;
  width: 108px;
  height: 30px;
  background-image: url('productmap-logo.png');
  background-size: contain;
  background-repeat: no-repeat;
  background-position: right center;
  opacity: 0.45;
  border-radius: 5px;
}

/* Hide footer on title (first) and CTA (last) — logo shown large there */
.reveal .slides section:first-child::after,
.reveal .slides section:last-child::after {
  display: none;
}

.small-cap {
  text-transform: capitalize;
}
